package com.hmdp.service;

import com.hmdp.dto.Result;
import com.hmdp.entity.Follow;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 服务类
 * </p>
 * 该服务类定义了关注功能的接口规范，包括关注、取消关注、查询是否关注、查询共同关注等操作
 * 继承自MyBatis-Plus的IService接口，可以使用其中定义的通用方法
 * 由于是接口，具体的实现需要在实现类中完成
 *
 * @author 虎哥
 * @since 2021-12-22
 */
public interface IFollowService extends IService<Follow> {

    // 关注或取消关注操作，参数为关注对象的ID和是否关注的标志
    Result follow(Long followUserId, Boolean isFollow);

    // 查询是否关注操作，参数为被关注对象的ID
    Result isFollow(Long followUserId);

    // 查询共同关注操作，参数为用户的ID
    Result followCommons(Long id);
}
